package mx.ipn.escom.redes.equipo.model;

import java.util.List;

import javax.persistence.Column;
import javax.persistence.Entity;
import javax.persistence.GeneratedValue;
import javax.persistence.GenerationType;
import javax.persistence.Id;
import javax.persistence.ManyToMany;
import javax.persistence.Table;

@Entity
@Table(name = "software")
public class AplicacionSoftware {
	  
	private Integer idSoftware;
	
	private String nombre;
	
	private String codeVersion;
	
	private String lenguaje;
	
	private String compilerVersion;
	
	private List<Equipo> listEquipo;

	/**
	 * @return the idSoftware
	 */
	@Id
	@GeneratedValue(strategy = GenerationType.IDENTITY)
	@Column(name = "idSoftware", nullable = false)
	public Integer getIdSoftware() {
		return idSoftware;
	}

	/**
	 * @param idSoftware the idSoftware to set
	 */
	public void setIdSoftware(Integer idSoftware) {
		this.idSoftware = idSoftware;
	}

	/**
	 * @return the nombre
	 */
	@Column(name = "nombre", nullable = false)
	public String getNombre() {
		return nombre;
	}

	/**
	 * @param nombre the nombre to set
	 */
	public void setNombre(String nombre) {
		this.nombre = nombre;
	}

	/**
	 * @return the codeVersion
	 */
	@Column(name="codeVersion", nullable = false)
	public String getCodeVersion() {
		return codeVersion;
	}

	/**
	 * @param codeVersion the codeVersion to set
	 */
	public void setCodeVersion(String codeVersion) {
		this.codeVersion = codeVersion;
	}

	/**
	 * @return the lenguaje
	 */
	@Column(name = "lenguaje", nullable = false)
	public String getLenguaje() {
		return lenguaje;
	}

	/**
	 * @param lenguaje the lenguaje to set
	 */
	public void setLenguaje(String lenguaje) {
		this.lenguaje = lenguaje;
	}

	/**
	 * @return the compilerVersion
	 */
	@Column(name = "compilerVersion", nullable = false)
	public String getCompilerVersion() {
		return compilerVersion;
	}

	/**
	 * @param compilerVersion the compilerVersion to set
	 */
	public void setCompilerVersion(String compilerVersion) {
		this.compilerVersion = compilerVersion;
	}

	/**
	 * @return the listEquipo
	 */
	@ManyToMany(mappedBy = "listSoftware")
	public List<Equipo> getListEquipo() {
		return listEquipo;
	}

	/**
	 * @param listEquipo the listEquipo to set
	 */
	public void setListEquipo(List<Equipo> listEquipo) {
		this.listEquipo = listEquipo;
	}
	
	

}
